/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化，请在代码生器重新生成此Model
 */
using Npgsql.TypeMapping;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MYData.Entity.SystemModels;

namespace MYData.Entity.DomainModels
{
    [Entity(TableCnName = "科目报销详情表",TableName = "tb_project_subjectexpensedetailinfo")]
    public partial class tb_project_subjectexpensedetailinfo:BaseEntity
    {
        /// <summary>
        ///科目报销模板详情表主键
        /// </summary>
        [Key]
        [Display(Name = "科目报销模板详情表主键")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string id { get; set; } = new Snowflake.Core.IdWorker(1, 1).NextId().ToString();

       /// <summary>
       ///科目外键
       /// </summary>
       [Display(Name ="科目外键")]
       [MaxLength(64)]
       [Column(TypeName="nvarchar(64)")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public string subjectId { get; set; }

       /// <summary>
       ///生成表单的Json字符串
       /// </summary>
       [Display(Name ="生成表单的Json字符串")]
       [Column(TypeName="nvarchar(max)")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public string jsonValue { get; set; }

        /// <summary>
        ///生成表单的Json字符串（完整版）
        /// </summary>
        [Display(Name = "生成表单的Json字符串（完整版）")]
        [Column(TypeName = "nvarchar(max)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string jsonAllValue { get; set; }

        /// <summary>
        ///生成表单的Json字符串（完整版）
        /// </summary>
        [Display(Name = "判断条件字段")]
        [Column(TypeName = "nvarchar(max)")]
        public string? jsonIsJudge { get; set; }

        /// <summary>
        ///创建人
        /// </summary>
        [Display(Name ="创建人")]
       [MaxLength(255)]
       [Column(TypeName="nvarchar(255)")]
       [Editable(true)]
       public string creator { get; set; }

       /// <summary>
       ///创建时间
       /// </summary>
       [Display(Name ="创建时间")]
       [Column(TypeName="datetime")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public DateTime createTime { get; set; }=DateTime.Now;

       /// <summary>
       ///修改人
       /// </summary>
       [Display(Name ="修改人")]
       [MaxLength(255)]
       [Column(TypeName="nvarchar(255)")]
       [Editable(true)]
       public string? modifer { get; set; }

       /// <summary>
       ///修改时间
       /// </summary>
       [Display(Name ="修改时间")]
       [Column(TypeName="datetime")]
       [Editable(true)]
       public DateTime? modiferTime { get; set; }

        /// <summary>
        ///是否删除
        /// </summary>
        [Display(Name = "是否删除")]
        [Column(TypeName = "int")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public int isDelete { get; set; } = 0;

       /// <summary>
       ///备注
       /// </summary>
       [Display(Name ="备注")]
       [MaxLength(1000)]
       [Column(TypeName="nvarchar(1000)")]
       [Editable(true)]
       public string? remark { get; set; }

       
    }
}